#ifndef __TDRAWOFFSET_H__
#define __TDRAWOFFSET_H__

class TGiWorldDraw;
class TDrawOffSet
{
public:
	TDrawOffSet(MSXML2::IXMLDOMElementPtr pXML){m_pXML = pXML;};
	~TDrawOffSet(void);

	void DrawOffSet(TGiWorldDraw& dc) const;

protected:
	void DrawOffSetOfC(TGiWorldDraw& dc) const;
	void DrawOffSetOfT(TGiWorldDraw& dc) const;
	void DrawOffSetOfP(TGiWorldDraw& dc) const;

	void DrawHorLeftOfC(TGiWorldDraw &dc) const;
	void DrawHorRightOfC(TGiWorldDraw &dc) const;
	void DrawVerOfC(TGiWorldDraw &dc) const;

	void DrawHorLeftOfT(TGiWorldDraw &dc) const;
	void DrawHorRightOfT(TGiWorldDraw &dc) const;
	void DrawVerOfT(TGiWorldDraw &dc) const;

	void DrawCube(TGiWorldDraw &dc,const AcGeVector3d &vtDir,const AcGePoint3dArray &ptArr, double dThick, long materialId = -1) const;
private:
	MSXML2::IXMLDOMElementPtr m_pXML;
};

#endif